package com.example.inetAddress;

import org.junit.jupiter.api.Test;

import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Arrays;

/**
 * @Author 郅占伟
 * @ClassName TestInetAddress
 * @Description InetAddress类的使用
 * @Date 2024年05月15日
 * @Version: 1.0
 */
public class TestInetAddress {

    /**
     * InetAddress类提供了一系列与IP地址相关的方法，利用这些方法可以获取到制定计算机的主机名、IP地址以及连接状态等
     * 信息。
     */
    @Test
    public void getHostName() throws UnknownHostException {
        // 获取本机的 IP 地址
        InetAddress localHost = InetAddress.getLocalHost();

        // 以字符串形式返回 IP 地址
        String hostAddress = localHost.getHostAddress();
        String hostName = localHost.getHostName();

        if ("10.179.123.230".equals(hostAddress)){
            System.out.println("启用本机的Modbus TCP服务器，本机的IP地址是：" + hostAddress);
        } else {
            System.out.println("本机的IP地址是：" + hostAddress);
        }

        System.out.println(hostAddress);
        System.out.println(hostName);

//        // 获取指定域名的所有 InetAddress 对象
//        InetAddress[] allByName = InetAddress.getAllByName("www.baidu.com");
//
//        // 根据域名获取 InetAddress 对象
//        InetAddress byName = InetAddress.getByName("www.baidu.com");
//
//        System.out.println(Arrays.toString(InetAddress.getAllByName("www.baidu.com")));
//        System.out.println(byName);
//        System.out.println("本机的ip地址是：" + hostAddress);
//        System.out.println("本机的hostName地址是：" + hostName);

    }

}
